# autor: Fabiano A. Lima
# Esse arquivo contém o código usado para gera ras tabelas e estimar os modelos.

library(tidyverse)
library(rvest)
library(urltools)
library(lubridate)

source("pesquisador.r", encoding = "utf8")
source("gera_tabela.r", encoding = "utf8")

folha <- folha() 
o_globo <- o_globo()

data_ini <- "01/03/2009"
data_fim <-"31/07/2011"
# Baixando dados folha

operacao <- "castelo areia"
magistrado <- "fausto sanctis"
outros_termos <- "operacao juiz criminal policia justica prisao"

nome_arq <- paste(operacao, magistrado)


tbl_citacoes <- readRDS(sprintf("./data/%s - citacoes.rds", nome_arq))
tbl_citacoes$Total <- tbl_citacoes$Folha + tbl_citacoes$`O Globo`
gera_tabela_totais(tbl_citacoes)


folha_fs_sem_operacao <- readRDS(sprintf("./data/%s - folha.rds", nome_arq))
o_globo_fs_sem_operacao <- readRDS(sprintf("./data/%s - o globo.rds", nome_arq))

# Modelo com dados normalizados

df_norm <- read_csv("./data/castelo de areia e fausto de sanctis 2009-03-01 a 2011-07-31.csv", col_types = "Ddd", na = "<1", skip = 2) %>%
  replace_na(list(`Operação Castelo de Areia: (Brasil)` = 0.1, `Fausto De Sanctis: (Brasil)` = 0.1)) %>%
  left_join(folha$gera_df(folha_fs_sem_operacao$resultados, "folha"), by = "Semana") %>%
  left_join(o_globo$gera_df(o_globo_fs_sem_operacao$resultados, "globo"), by = "Semana") %>%
  replace_na(list(folha = 0, globo = 0)) %>%
  mutate(
    cit_indep = folha + globo,
    `Ano.2010` = ifelse(year(Semana) == 2010, 1, 0),
    `Ano.2011` = ifelse(year(Semana) == 2011, 1, 0)
  )


fit_1 <- lm(`Fausto De Sanctis: (Brasil)` ~ `Operação Castelo de Areia: (Brasil)`, data = df_norm)
fit_2 <- lm(`Fausto De Sanctis: (Brasil)` ~ `Operação Castelo de Areia: (Brasil)` + cit_indep, data = df_norm)
fit_3 <- lm(`Fausto De Sanctis: (Brasil)` ~ `Operação Castelo de Areia: (Brasil)` + cit_indep + Ano.2010 + Ano.2011, data = df_norm)

gera_tabela(fit_1, fit_2, fit_3, "2010":"2011", "2009")

summary(fit_1)
summary(fit_2)
summary(fit_3)
# Modelo com dados independentes

